from flask import Flask, render_template
# 创建Flask应用实例
app = Flask(__name__)
"""# 定义路由，运用装饰器语法

@app.route('/')

# 定义视图函数
def index():
    return 'Hello world'

# 定义有参数路由
@app.route('/hello/<name>')
def hello(name):
    return f'Hello, {name}!'

# 应用服务器
if __name__ == '__main__':
     app.run(debug = True, host='0.0.0.0', port=8080)

@app.route('/')
@app.route('/hello/<name>')
@app.route('/hello')
def index2(name = None):
    if name:
        return f"hello {name}"
    else:
        return "hello world"
"""

# render_template()函数用于渲染模板，第一个参数是模板文件名，第二个参数是模板变量。
# 也可以渲染静态网页，不过一般静态网页不用由 render_template() 函数渲染。
@app.route('/haha')
def haha():
    return render_template('haha.html')

@app.route('/hihi')
def hihi():
    return render_template('hihi.html')

@app.route('/<name>.html')
def show_name(name):
    print(f'name = {name}')
    if name:
        return render_template(name + '.html')
    else:
        return render_template('index.html')

# 动态路由，动态网页
@app.route('/hello/<name>')
def hello_name(name):
    return render_template('hello_name.html', name=name)


if __name__ == '__main__':
     app.run(debug = True, host='0.0.0.0', port=8080)